<!--
 * Copyright ©
 * #
 * @author: zw
 * @date: 2024-01-20
 -->

<template>
  <v-group v-if="group" v-bind="{ group }" @change-group="$emit('change-group', $event)"></v-group>
  <v-node v-if="node" v-bind="{ node }" @change-node="$emit('change-node', $event)" @align-node="$emit('align-node', $event)"></v-node>
  <v-edge v-if="edge" v-bind="{ edge }" @change-edge="$emit('change-edge', $event)"></v-edge>
  <v-map ref="aerialMap" v-bind="{ editor }"></v-map>
</template>

<script>
import group from "@/views/plugin/group";
import node from "@/views/plugin/node";
import edge from "@/views/plugin/edge";
import map from "@/views/plugin/map";

export default {
  name: "property",
  inheritAttrs: false,
  components: { "v-group": group, "v-node": node, "v-edge": edge, "v-map": map },
  props: ["editor", "group", "node", "edge"],
  emits: ["change-group", "change-node", "change-edge", "align-node"],
  methods: {
    updateMiniMap() {
      this.$refs.aerialMap.updateMiniMap();
    },
  },
  //  End
};
</script>

<style lang="css" scoped></style>
